#创建一个处理log的类
import logging
import os.path

from common.conf import log_path


class Dolog():
    #记录器
    #写入的目的地（控制台、文件）对象
    #写到哪里去？--具体文件
    #写什么内容？（执行代码的时间，哪个py文件的哪一行，结果，异常信息，异常级别）
    #设置一下日志格式
    def getLogger(self, name):
        # 获取记录器
        myLoger = logging.getLogger(name)

        myLoger.setLevel(logging.DEBUG)
        # myLoger.setLevel(logging.CRITICAL)
        # myLoger.setLevel(logging.INFO)
        # myLoger.setLevel(logging.ERROR)
        # myLoger.setLevel(logging.WARNING)




        # 新建一个日志文件
        # filename = r"C:\python\autoTest\logs\log.log"
        filename = os.path.join(log_path,'log.log')
        # 写入的目的地（控制台，文件）对象
        logF = logging.FileHandler(filename,encoding='utf-8')

        # 写什么内容
        writeStr = "%(asctime)s--%(filename)s--%(lineno)d--%(levelname)s:%(message)s"

        # 获取一个目的地上的文件所需的格式对象
        str_format = logging.Formatter(writeStr)

        # 在纸上做印刷
        logF.setFormatter(str_format)

        # 将记录器与桌子关联
        myLoger.addHandler(logF)

        return myLoger


if __name__ == '__main__':
    doLog = Dolog()

    myLog = doLog.getLogger(__name__)

    myLog.info("hdsjfkhsdjf")
    myLog.error('dasfdsfdvsvd')
    myLog.critical('onebvudkvndv')
    myLog.debug('dkbjskdjvbdslv')
    myLog.warning('kjgdcikbcskjcbksd')